import {   WebMapTileServiceImageryProvider }  from 'cesium'
class TdtLayers{
    TDU_Key:string;
    tdtList:Array<string>;
    constructor() {
        this.tdtList=[
            "56accef480103860f1942826d6fdea14",
            "099aa68f69ed490ff5b7ae883af15563",
            "0ab24f942c2a06059c7d9bd17c580eaf",
            "31dfe5500a5927e1c72ce8025c20b768",
            "4bc86eeaaebc27c9c29986fb3f1674c0"
        ];
        this.TDU_Key="";
        let  num=Math.floor(Math.random()*(5-1)+1);
        this.TDU_Key=this.tdtList[num-1];
    }
    addLayer(viewer:any, type:string){
        //在线天地图影像服务地址(墨卡托投影)
        var TDT_IMG_W = "http://{s}.tianditu.gov.cn/img_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=img&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default&format=tiles&tk=" + this.TDU_Key;
        //在线天地图矢量地图服务(墨卡托投影)
        var TDT_VEC_W = "http://{s}.tianditu.gov.cn/vec_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=vec&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default&format=tiles&tk=" + this.TDU_Key;
        //在线天地图影像中文标记服务(墨卡托投影)
        var TDT_CIA_W = "http://{s}.tianditu.gov.cn/cia_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=cia&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default.jpg&tk=" + this.TDU_Key
        //在线天地图矢量中文标记服务(墨卡托投影)
        var TDT_CVA_W = "http://{s}.tianditu.gov.cn/cva_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=cva&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default.jpg&tk=" + this.TDU_Key;
        //在线天地图地形地图服务(墨卡托投影)
        var TDT_TER_W = "http://{s}.tianditu.gov.cn/ter_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=ter&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default.jpg&tk=" + this.TDU_Key;
        //在线天地图地形中文标记服务(墨卡托投影)
        var TDT_CTA_W = "http://{s}.tianditu.gov.cn/cta_w/wmts?service=wmts&request=GetTile&version=1.0.0" +
            "&LAYER=cta&tileMatrixSet=w&TileMatrix={TileMatrix}&TileRow={TileRow}&TileCol={TileCol}" +
            "&style=default.jpg&tk=" + this.TDU_Key;
        viewer.imageryLayers.removeAll(viewer.imageryLayers.get(0))
        let mapUrl = TDT_IMG_W;
        let labelUrl = TDT_CIA_W;
        if (type === 'c'){ // 影像图
            mapUrl = TDT_IMG_W;
            labelUrl = TDT_CIA_W;
        } else if (type === 'w'){ // 矢量图
            mapUrl = TDT_VEC_W;
            labelUrl = TDT_CVA_W;
        } else if (type ==='d'){           // 地形图
            mapUrl = TDT_TER_W;
            labelUrl = TDT_CTA_W;
        }
        let Img = new WebMapTileServiceImageryProvider({   //调用影像中文服务
            url: mapUrl,//url地址
            layer: "ter_w",	//WMTS请求的层名称
            style: "default",//WMTS请求的样式名称
            format: "tiles",//MIME类型，用于从服务器检索图像
            tileMatrixSetID: "GoogleMapsCompatible",//	用于WMTS请求的TileMatrixSet的标识符
            subdomains: ["t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7"],//天地图8个服务器
            minimumLevel: 0,//最小层级
            maximumLevel: 18,//最大层级,
            // tileMatrixSetID:'w'
        })
        viewer.imageryLayers.addImageryProvider(Img)//添加到cesium图层上
        let cia = new WebMapTileServiceImageryProvider({   //调用影像中文注记服务
            url: labelUrl,
            layer: "cta_w",
            style: "default",
            format: "tiles",
            tileMatrixSetID: "GoogleMapsCompatible",
            subdomains: ["t0", "t1", "t2", "t3", "t4", "t5", "t6", "t7"],//天地图8个服务器
            minimumLevel: 0,
            maximumLevel: 18,
            // tileMatrixSetID:'w'
        })
        viewer.imageryLayers.addImageryProvider(cia)//添加到cesium图层上
    }
}

const tdtlayers:any=new TdtLayers();

export  default  tdtlayers;
